Sub-band adaptive FIR-filtering

ABSTRACT

A method for designing a set of sub-band FIR filters, where each FIR filter has a number of filter coefficients and is connected to an adjustable delay line. The method includes dividing an input signal into a number of sub-band signals, where a spectrum of the input signal comprises spectra of the sub-band signals; providing a respective goal sub-band signal for each sub-band dependent on a goal signal; filtering and delaying each sub-band signal using a corresponding FIR filter and delay line to provide filtered signals; providing error signals for each sub-band dependent on the filtered signals and the corresponding goal signals; adapting the filter coefficients of each sub-band FIR filter such that the respective filtered signal approximately matches a corresponding goal sub-band signal; and changing a respective delay of the delay line for each sub-band to reduce or increase a first quality criterion.

CLAIM OF PRIORITY

This patent application claims priority from EP Application No. 10 155192.7 filed Mar. 2, 2010, which is hereby incorporated by reference.

FIELD OF TECHNOLOGY

The present invention relates generally to sub-band signal processingand, more particularly, to sub-band FIR filters for audio applications.

RELATED ART

A FIR filter (finite impulse response filter), in contrast to an IIRfilter (infinite impulse response filter), may be configured as adigital filter having a transfer function (i.e., magnitude and phaseresponse), which is arbitrarily definable. The transfer functiontherefore may be designed with minimum phase, maximum phase or mixedphase. Linear phase transfer functions may also be implemented, which isoften desired in audio signal processing.

Filter lengths are typically relatively long when using FIR filters inaudio signal processing. Increasing the length of a FIR filter, however,may also increase computational complexity and memory requirementsduring operation. Decay time of room impulse responses present in mostaudio applications, for example, is considerably long, which results incorrespondingly long filter lengths when using FIR filters. In addition,the human auditory system provides a non-uniform frequency resolutionover different frequency bands. The human auditory system resolves lowfrequencies quite well (e.g., frequency differences may be more easilyrecognized at low absolute frequencies), whereas high frequencies arenot easily discerned. A 100 Hz tone may, for example, be easilydistinguished from a 200 Hz tone, whereas the human ear has difficultiesdistinguishing a 5000 Hz tone from a 5100 Hz tone, although thefrequency difference is 100 Hz in both cases. The frequency resolutionof the human auditory system, therefore, typically decreases withincreasing frequencies. This phenomenon is well known and forms thebasis for psychoacoustical frequency scales adapted to the humanauditory system such as the Bark scale, the Mel scale, and ERB(equivalent rectangular bandwidth) scale.

Research has shown that listening room impulse responses areconsiderably long, especially at low frequencies, because thedegradation of energy is slow depending on the interior of the room(e.g., carpet, upholstered furniture, etc.). This effect is evenintensified by the fact that the sound pressure generated by an audioreproduction system is higher in the bass frequency range (e.g., below200 Hz), whereas the human auditory system is less sensitive to lowfrequency audio signals.

The length of a FIR filter is typically larger than a certain minimumlength in order to provide sufficient audio quality in audio signalprocessing systems due to the aforesaid characteristics of the humanauditory system and a typical listening room. A FIR filter with 4410filter coefficients may be used, for example, for each audio channel ata sampling frequency of 44100 Hz to provide a frequency resolution ofabout 10 Hz in the bass frequency range, where modern audio systems haveup to 16 channels.

There is a need for a FIR filter in audio applications that permits useof standard digital audio signal processing hardware and, thus, a needfor adequate filter design methods.

SUMMARY OF THE INVENTION

According to an aspect of the invention, a method is provided fordesigning a set of sub-band FIR filters, where each FIR filter has anumber of filter coefficients and is connected to an adjustable delayline. The method includes dividing an input signal into a number ofsub-band signals, where a spectrum of the input signal includes spectraof the sub-band signals; providing a respective goal sub-band signal foreach sub-band dependent on a goal signal; filtering and delaying eachsub-band signal using a corresponding FIR filter and delay line toprovide filtered signals; providing error signals for each sub-banddependent on the filtered signals and the corresponding goal signals;adapting the filter coefficients of each sub-band FIR filter such thatthe respective filtered signal approximately matches a correspondinggoal sub-band signal; and changing a respective delay of the delay linefor each sub-band to reduce or increase a first quality criterion.

According to another aspect of the invention, a method is provided forfiltering an input signal with a set of sub-band FIR filters, where eachFIR filter has a number of filter coefficients and is connected to anadjustable delay line. The method includes dividing the input signalinto a number of sub-band signals, where a spectrum of the input signalincludes spectra of the sub-band signals; providing a respective goalsub-band signal for each sub-band dependent on a goal signal; filteringand delaying each sub-band signal using a corresponding FIR filter anddelay line to provide filtered signals; providing error signals for eachsub-band dependent on the filtered signals and the corresponding goalsignals; adapting the filter coefficients of each sub-band FIR filtersuch that the respective filtered signal approximately matches acorresponding goal sub-band signal; and changing a respective delay ofthe delay line for each sub-band to reduce or increase a first qualitycriterion.

DESCRIPTION OF THE DRAWINGS

Aspects of the invention may be better understood referring to thefollowing drawings and descriptions. In the figures like referencenumerals designate corresponding parts. In the drawings:

FIG. 1 illustrates a basic signal processing structure for an adaptivecalculation of filter coefficients of a FIR filter, the FIR filterrepresenting a transfer function G(z) that approximately matches apredefined target function P(z);

FIG. 2 illustrates a modification of the structure of FIG. 1 whereby thefull-band FIR filter G(z) of FIG. 1 is replaced by a set of sub-band FIRfilters G_(m)(z);

FIG. 3 illustrates a signal processing structure comprising a set ofsub-band FIR filters G_(m)(z) which can replace a full-band FIR filterG(z);

FIG. 4 illustrates a flow diagram of a method for designing a set ofsub-band FIR filters;

FIG. 5 illustrates a signal processing structure for adaptive FIR filterdesign including a number of sub-bands each comprising a sub-band FIRfilter and a delay line;

FIG. 6 graphically illustrates a set of Bark scale based weightingfactors that emphasize low frequency sub-bands when adapting lengths ofthe sub-band FIR filters; and

FIGS. 7A and 7B respectively illustrate a magnitude response of anevenly stacked filter bank, and a magnitude response of an oddly stackedfilter bank.

DETAILED DESCRIPTION OF THE INVENTION

FIG. 1 illustrates a basic signal processing structure for an adaptivecalculation of filter coefficients g_(k) (k=0, 1, . . . , K−1) of a FIRfilter 20. The subscript k represents an index of the filtercoefficient, and the variable K represents a filter length. The FIRfilter 20 has a (discrete) transfer function G(z) which, aftersuccessful adaptation of the filter coefficients g_(k), approximatelymatches a predefined target function P(z) of a reference system 10. Thereference filter 10 and the FIR filter 20 are supplied with a testsignal x[n] (e.g., an input/reference signal), which, for example, iswhite noise or any other signal having a band-width that includes thepass band of the target transfer function P(z). An output signal y[n] ofthe FIR filter 20 is subtracted via a subtractor 30 from the outputsignal d[n] (e.g., a desired goal signal) of the reference system 10.The difference d[n]−y[n] provides an error signal e[n] to an adaptationunit 21. The adaptation unit 21 calculates an updated set of FIR filtercoefficients g_(k) from the error signal e[n] and the input signal x[n]during each sample time interval. A Least-Mean-Square (LMS) algorithm ora Normalized-Least-Mean-Square (NLMS) algorithm may be employed foradaptation of the filter coefficients. Alternative adaptationalgorithms, however, may also be utilized for this purpose. The FIRfilter coefficients g_(k) may represent a substantially improved (e.g.,optimum) approximation of the target transfer function P(z) after, forexample, a convergence of the adaptation algorithm.

A spectrum of a signal to be filtered may be divided into a number ofnarrow band signals (sub-band signals). Each narrow band signal may beseparately filtered to reduce the computational effort (computationalcomplexity) of the FIR filter. The division of a full-band signal into aplurality of sub-band signals may be implemented with an analysis filterbank (AFB). The sub-band signals may be combined (e.g., recombined) to asingle full-band signal with a corresponding synthesis filter bank(SFB). Signals expressed herein without subscripts (e.g., the goalsignal d[n], where n represents a time index) represent full bandsignals. Signals expressed herein with subscripts (e.g., d_(m)[n])represent a set of sub-band signals which are the decomposition of thecorresponding full-band signal d[n]. The subscript m represents thenumber of the sub-band (m=1, 2, . . . , M). Similarly, a discretefull-band transfer function G(z) may be decomposed into a number ofsub-band transfer functions G_(m)(z).

FIG. 2 illustrates a basic signal processing structure similar to thatin FIG. 1, whereby the adaptive FIR filter 20 is replaced by a set 20′of sub-band FIR filters. FIG. 4 illustrates a flow diagram of a methodfor designing a set of sub-band FIR filters. Referring to FIGS. 2 and 4,in step 400, the full-band input signal x[n] is divided into M number ofsub-band input signals x_(m)[n] (with m=1, 2, . . . , M) with an AFB 22(FIG. 2). In step 402, the full-band goal signal d[n] is divided into Mnumber of goal sub-band signals d_(m)[n] using an AFB 11 (again m=1, 2,. . . , M). Each sub-band FIR filter has a narrow-band transfer functionG_(m)(z), where the subscript m represents the number of the sub-bands.Each sub-band FIR filter G_(m)(z) may be represented by its filtercoefficients g_(mk), where the subscript k represents the index of thefilter coefficients ranging from k=0 to k=K_(m)−1 (K_(m) being thefilter length of the filter G_(m)(z) in the m^(th) sub-band). Eachsub-band FIR filter G_(m)(z) is associated with an adaptation unit (theset of adaptation units is denoted by numeral 21′ in FIG. 2), whichreceives the corresponding error signal e_(m)[n]=d_(m)[n]−y_(m)[n], andcalculates a respective set of updated filter coefficients g_(mk) (k=1,2, . . . , K_(m)−1) for the respective sub-band m.

The filter coefficients g_(mk) of each one of the M sub-band FIR filtersG_(m)(z) are adapted such that, after convergence of the adaptationalgorithm, the overall transfer characteristic G(z) from a combinationof all sub-band transfer functions G_(m)(z) substantially matches thepredefined target function P(z).

FIG. 3 is a schematic illustration of a signal processor 300 thatincludes a set of sub-band FIR filters G_(m)(z) 20′, which may replacethe full-band FIR filter G(z) shown in FIG. 1. The set of sub-band FIRfilters G_(m)(z) 20′ may be operated between an analysis filter bank 22and a corresponding synthesis filter bank 22′ to filter audio signals,after calculating appropriate filter coefficients g_(mk). The AFB 22,the FIR filter bank 20′, and the SFB 22′ together implement the transferfunction G(Z) that approximately matches a target function P(z). Thetarget function P(z) may represent, for example, an equalizing filter inan audio system. Both signal magnitude and signal phase may be subjectedto equalization in an audio system to generate a desired soundimpression for a listener. The target function P(z) therefore generallyrepresents a non minimum phase filter with a non linear phasecharacteristic.

Computational efficiency (e.g., in terms of computational effort andmemory requirements) of the signal processor 300 may depend on, interalia, availability of efficient implementations of the analysis andsynthesis filter banks. A filter bank where the band widths of thesub-bands with low center frequencies is narrower than the band widthsof sub-bands with higher center frequencies may be used to account forthe non-uniform frequency resolution of the human auditory system. Apsycho-acoustically motivated division of full-band signals into a setof sub-band signals whose bandwidths depend on the position of therespective sub-band within the audible frequency range may be performedusing a plurality of different approaches. No efficient filter bank isknown, however, that non-uniformly divides an input spectrum into a setof sub-bands of different band-widths. Nevertheless, other methods areknown in the art that allow for division of full-band signals into a setof sub-band signals of equal band-width. One example is the fastimplementation of oversampled GDFT filter banks as disclosed by S. Weisset al. (see S. Weiss, R. W. Stewart, “Fast Implementation of OversampledModulated Filter Banks”, in: IEE Electronics Letters, vol. 36, pp.1502-1503, 2000), which uses a prototype filter and the FFT algorithmwhich is available in many signal processing environments.

A filter bank is used that operates with sub-bands of substantiallyequal band widths, as efficient implementations are not available forhandling sub-bands of non-uniform bandwidth. FIR filters assigned torespective sub-bands may be chosen with different filter lengths,however, to reduce or alleviate the insufficiency of equally widesub-bands. The FIR filters therefore may include a relatively smallnumber of filter coefficients in sub-bands that use low frequencyresolution, and a relatively large number of filter coefficients insub-bands that use high frequency resolution. The sub-bands that usehigh frequency resolution are usually those sub-bands that lie in thelower part of the audible frequency range. A frequency resolution thatcorresponds to the frequency resolution of the human auditory systemtherefore may be provided using efficient filter banks operating withequally wide sub-bands.

The target function P(z), as indicated above, may be implemented via anon minimum phase filter having a non-linear group-delay characteristicover frequency. A delay line may be connected upstream or downstream toeach sub-band FIR filter to compensate for different signal propagationdelays due to different group delays in different sub-bands. The delayequalization therefore does not need to be provided using additional FIRfilter coefficients, which are computationally inefficient. The numberof filter coefficients (i.e. number of filter “taps”) and the delayvalues may be adaptively determined for each sub-band as describedherein below as “Adaptive Tap Assignment” and “Adaptive DelayAssignment” algorithms because the delay values and the number of filtercoefficients depend on the target transfer function P(z) (i.e. magnitudeand phase response) to be realized. The filter coefficients (e.g., thecoefficients g_(mk) in FIG. 1) and the number K_(M) of coefficients andan additional delay Δ_(m) therefore is adaptively determined whendesigning the M sub-band FIR filters G_(m)(z). FIG. 5 is a schematicillustration of a signal processor 500 for implementing a sub-band FIRfilter. The signal processor 500 in FIG. 5 is an enhanced version of thesignal processor 200 in FIG. 2 with additional delays in each sub-bandsignal path and a global “adaptive tap assignment and delay assignmentunit”.

Referring to FIGS. 2 and 4, the full-band input signal x[n] (e.g.,band-limited white noise) is supplied to the system 10 with the targettransfer function P(z) to generate the goal signal d[n]. In steps 400and 402, the goal signal d[n], as well as the input signal x[n], aredivided into a number M of sub-band signals d_(m)[n] and x_(m)[n],respectively. The example of FIG. 5 illustrates the components andsignals associated with the first and the last sub-band (i.e., m=1 andm=M). The sub-band input signals x_(m)[n] are supplied to the adaptiveFIR filters 23-24 with transfer function G_(m)(z), thus generatingfiltered sub-band signals y_(m)[n] (see step 406 in FIG. 4). Referringto FIGS. 4 and 5, in step 408, each filtered sub-band signals y_(m)[n]is subtracted from the corresponding goal signal d_(m)[n] via arespective subtractor 25, 26, yielding an error signal e_(m)[n] for eachsub-band. In step 410, an adaptation unit 27, 28 is assigned to each FIRfilter G_(m)(z) 23, 24 for optimizing the filter coefficients g_(mk)(i.e., the impulse response {g_(m0), g_(m1), . . . , g_(m(K−1))} of thefilter) of the respective FIR filter G_(m)(z), where the optimum set offilter coefficients g_(mk) reduces (e.g., minimizes) a norm (e.g., thepower) of the respective error signal e_(m)[n].

A delay line 29, 30 providing a delay Δ_(m) (see step 404 in FIG. 4) isconnected upstream or downstream to each sub-band FIR filter G_(m)(z)23, 24. In step 412, an “adaptive tap assignment and adaptive delayassignment unit” 40 is provided to dynamically adapt the filter lengthsK_(m) of the FIR filters G_(m)(k) 23 and 24 and the corresponding delayvalues of the delay lines Δ_(m) 29, 30 in accordance with an adaptivetap assignment and adaptive delay assignment algorithm, which will bedescribed below in further detail.

The above-mentioned adaptive tap assignment (i.e., the adaptation of FIRfilter lengths) may be performed using a plurality of differentapproaches. One approach is to vary the filter lengths K_(m) of thesub-band FIR filters G_(m)(z) until the total error signal e[n] (wherebye[n]=e₁[n]+e₂[n]+ . . . +e_(M)[n]) is reduced, for example, to arelative low (or minimum) value. Such a method yields good results, butmay be time-consuming because the adaptive filters need time to convergeafter each change in the number of filter coefficients. Another approachwhich may also yield good results, but is less time-consuming, considersthe energy of the S endmost filter coefficients g_(m(Km−1)),g_(m(Km−2)), . . . , g_(m(Km−S)). The filter length K_(m) of a sub-bandfilter G_(m)(z) is changed until the energy of the S endmost filtercoefficients is approximately equal. This approach uses impulse responseof the sub-band filter to decay exponentially over time, which istypical in real-world systems. An assessment of how well the sub-bandfilters G_(m)(z) approximate the target function P(z) and provision of arule for re-distributing filter coefficients across the sub-band filtersmay be provided by comparing the energies of the S endmost filter tapsof each sub-band filter. Sub-band filter impulse responses therefore maybe provided whose signal decay behavior is like the signal decaybehavior of the impulse response of the target function P(z), which maybe regarded as an optimum regarding minimized errors.

Examples of some adaptive tap assignment algorithms are described belowin further detail. M/2 sub-bands may have to be processed forreal-valued full-band input signals x[n] (see FIG. 2) because the otherM/2 sub-band signals are conjugate complex copies of the signals in thefirst M/2 sub-bands. The respective sub-band FIR filter transferfunctions therefore may obey, for example, the following relationship:G _(m)(z)=G _(M−m+1)(z)*, for m=1, . . . M/2,  (1)where the asterisk represents a complex conjugate operator.

The filter lengths K_(m) of the sub-band filters G_(m)(z) (where m=1, 2,. . . , M/2) are modified with a period of Q samples (i.e., samples inthe sub-bad systems). The total number of filter coefficients g_(mk)[n]of each sub-band filter G_(m)(z), however, may remain constant. Thefilter length of another sub-band filter therefore is reduced such thatthe total number of filter coefficients are constant when the filterlength of one or more sub-band filters increases. The length of each ofthe M/2 sub-band FIR filters may be reduced by ΔK coefficients for aperiod of Q samples. Thus, there are ΔK·M/2 “free” coefficients, whichare re-distributed throughout the M sub-band filters according tocertain criteria, which will be described below in further detail.

The aforesaid “re-distribution” may be expressed, for example, by thefollowing equation:

$\begin{matrix}{{{K_{m}\left\lbrack {\frac{n}{Q} + 1} \right\rbrack} = {{K_{m}\left\lbrack \frac{n}{Q} \right\rbrack} - {\Delta\; K} + {\Delta\;{K \cdot \frac{M}{2} \cdot \frac{c_{m}\left\lbrack \frac{n}{Q} \right\rbrack}{\sum\limits_{i = 1}^{M/2}\;{c_{i}\left\lbrack \frac{n}{Q} \right\rbrack}}}}}},} & (2)\end{matrix}$where m=1, 2, . . . , M/2 represents the number of the sub-band. Theexpression c_(m)[n/Q] represents the above-mentioned criterion for thedistribution of filter taps (i.e., filter coefficients). A usefulcriterion is the energy of the sub-band error signal e_(m)[n]. Thiscriterion c_(m)[n/Q] may be expressed, for example, by the followingequation:

$\begin{matrix}{{{c_{m}\left\lbrack \frac{n}{Q} \right\rbrack} = {\frac{1}{R}{\sum\limits_{r = 0}^{R - 1}\;{{e_{m}\left\lbrack {n - r} \right\rbrack} \cdot {e_{m}^{*}\left\lbrack {n - r} \right\rbrack}}}}},} & (3)\end{matrix}$where m=1, 2, . . . , M/2, and R is the number of samples over which theerror signal is averaged. The adaptive sub-band FIR filter convergesbefore equation (3) is evaluated. R therefore is substantially smallerthan Q; i.e., R<<Q. Another criterion considers the energy of theendmost S filter coefficients of the respective sub-band FIR filter.This criterion c_(m)[n/Q] may be expressed, for example, by thefollowing equation:

$\begin{matrix}{{{c_{m}\left\lbrack \frac{n}{Q} \right\rbrack} = {\frac{1}{S}{\sum\limits_{s = 0}^{S - 1}\;{{{g_{m{({{Km} - s})}}\lbrack n\rbrack} \cdot g_{m{({{Km} - s})}}}{\,^{*}\lbrack n\rbrack}}}}},} & (4)\end{matrix}$where m=1, 2, . . . , M/2, and K_(m) represents the current filterlengths K_(m)[n] in the respective sub-bands. Alternatively, the energyof the sub-band input signals x_(m)[n] may be considered together withthe endmost S filter coefficients. This criterion c_(m)[n/Q] may beexpressed, for example, by the following equation:

$\begin{matrix}{{c_{m}\left\lbrack \frac{n}{Q} \right\rbrack} = {{\frac{1}{R}{\sum\limits_{r = 0}^{R - 1}\;{{{x_{m}\left\lbrack {n - r} \right\rbrack} \cdot x_{m}}{\,^{*}\left\lbrack {n - r} \right\rbrack}}}} + {\frac{1}{S}{\sum\limits_{s = 0}^{S - 1}\;{{{g_{m{({{Km} - s})}}\lbrack n\rbrack} \cdot g_{m{({{Km} - s})}}}{{\,^{*}\lbrack n\rbrack}.}}}}}} & (5)\end{matrix}$

The criterion according to equation (3), as indicated above, providesgood results, but is time-consuming to evaluate. The criterion accordingto equation (5) should be used when the target system is time-varyingand the input signals are arbitrarily colored, as may be the case in AEC(acoustic echo canceling) systems. For sub-band FIR filter design,equation (4) yields good quality results and also rapidly adapts wherethe input signal x[n], for example, may be chosen by the designer to bewhite noise.

The expression c_(m) as defined in equation (3), (4), or (5) may beweighted with a corresponding weighting factor w_(m) to account forpsycho-acoustic aspects; e.g., the expression c_(m)[n/Q] may be replacedby w_(m)·c_(m)[n/Q] in equation (3), (4), or (5). The weighting factorsw_(m) may be chosen such that the frequency resolution of the humanauditory system is considered. Using the Bark scale, the factors w_(m)may be calculated, for example, with the following expression:

$\begin{matrix}{{w_{m} = {{13\mspace{11mu}{\tan^{- 1}\left( {0.76\frac{f_{c,m} + 1}{1000}} \right)}} + {3.5\mspace{11mu}{\tan^{- 1}\left( \left( \frac{f_{c,m} + 1}{7500} \right)^{2} \right)}} - {13\mspace{11mu}{\tan^{- 1}\left( {0.76\frac{f_{c,m}}{1000}} \right)}} - {3.5\mspace{11mu}{\tan^{- 1}\left( \left( \frac{f_{c,m}}{7500} \right)^{2} \right)}}}},} & (6)\end{matrix}$where f_(c,m) represents the center frequency in Hertz (Hz) of them^(th) sub-band which may be calculated as f_(c,m)=(2m−1)·f_(S)/(2·M),and f_(S) represents the sampling frequency in Hz. An example set ofnormalized weighting factors w_(m) that were calculated in accordancewith equation (6) are illustrated in FIG. 6, where 16 sub-bands wereconsidered (M/2=16).

The re-distribution of coefficients in accordance with equation (2), asindicated above, “equalize” either (i) the energy of the sub-band errorsignals e_(m)[n] (see eqn. (3)), (ii) the energy of a part (e.g., theendmost S filter coefficients) of the sub-band filter-coefficientsg_(mk) (where k={K_(m)−S, . . . , K_(m)−1}, see eqn. (4)), or (iii) acombination of energies of the sub-band filter-coefficients g_(mk) andthe sub-band input signals x_(m)[n] (see eqn. (5)). Differentenergy-based criteria are possible. The “goal” of the algorithm is thusto provide an equal distribution of signal energies across thesub-bands. As this goal is the desired outcome of an optimizationprocess, the above described algorithm may also be seen as aminimization (or maximization) operation.

In an ideal case, the criteria c_(m)[n/Q] shown in equations (3) to (5)may have substantially equal values in each sub-band m where

$\begin{matrix}{\frac{1}{\frac{M}{2}} = {\frac{c_{m}\left\lbrack \frac{n}{Q} \right\rbrack}{\sum\limits_{i = 1}^{M/2}\;{c_{i}\left\lbrack \frac{n}{Q} \right\rbrack}}.}} & (7)\end{matrix}$The criterion c_(m)[n], therefore, is a factor 2/M smaller than thetotal value of c_(m)[n] summed over all sub-bands in each one of the M/2considered sub-bands. Returning to the above-mentioned minimizationtask, the quality function to be reduced (e.g., minimized) may beexpressed as follows:

$\begin{matrix}{q_{m} = {{{\frac{c_{m}\left\lbrack \frac{n}{Q} \right\rbrack}{\sum\limits_{i = 1}^{M/2}\;{c_{i}\left\lbrack \frac{n}{Q} \right\rbrack}} - \frac{2}{M}}}.}} & (8)\end{matrix}$

The FIR filters G_(m)(z), as indicated above, generally have differentgroup delays in different sub-bands, which provide different signalpropagations delays. Each FIR filter is connected upstream or downstreamto an adjustable delay line in each sub-band to compensate for suchdiffering delays. The delay values in the sub-bands may be iterativelyoptimized, which will be described below as “adaptive delay assignment”.

The FIR filter coefficients that are adaptively assigned to the FIRfilters in the sub-bands (i.e., the adaptive tap assignment) may beconsidered infinite impulse responses truncated by multiplication with arectangular window function that provides a finite impulse response. Therectangular window function may be shifted (e.g., along the time axis)for each sub-band FIR filter, where the respective time-shift representsthe effective delay of the delay line connected to the corresponding FIRfilter.

The adaptive delay assignment algorithm is targeted to find, for eachsub-band, a delay value (i.e., a time-shift of the rectangular window)that results in a maximum energy finite impulse response of therespective FIR filter. Merely the energy or the corresponding FIR filtercoefficients therefore are considered when assigning the delay values tothe respective delay lines. Alternatively, the delay values may bechosen such that a norm of the total error signal e[n]=e₁[n]+e₂[n]+ . .. +e_(M/2)[n] is reduced (e.g., minimized). As already mentioned withregard to the adaptive tap assignment algorithm, the use of such acriterion will result in a slow convergence, while still providingsufficiently good results. Alternatively, the delay values may be chosensuch that the total energy of the respective FIR filter coefficients isincreased (e.g., maximized).

Other criteria for finding optimum delay values may be targeted toequalize the energy of the causal and the acausal part of the respectiveimpulse response since the FIR impulse responses (i.e., the FIR filtercoefficients) of the sub-band filters generally include causal andacausal components due to the conversion into sub-bands. The differencebetween the energy of the first half and the energy of the second halfof the respective sub-band FIR impulse response therefore is reduced(e.g., minimized). Such an optimizing strategy may be summarized asfollows:

-   -   (i) Define a first part and a second part of the respective        sub-band FIR impulse response g_(mk), and calculate the energy        of the first part and the second part of the FIR impulse        response for each sub-band m.    -   (ii) Repeat the following steps with a period of V samples:        -   (A) Increase the delay of the respective delay line Δ_(m) by            P taps (e.g. P=1) when the energy of the first part of the            FIR impulse response g_(mk) is greater than the energy of            the second part of the impulse response.        -   (B) Decrease the delay of the respective delay line Δ_(m) by            P taps (e.g. P=1) when the energy of the first part of the            FIR impulse response g_(mk) is lower than the energy of the            second part of the impulse response. The minimum delay,            however, is zero.        -   (C) Leave the delay unchanged when both energies are equal.

Dividing the FIR impulse response into two parts of equal lengths mayprovide good results for impulse responses whose maximum is locatedapproximately in the middle of the impulse response. This optimizingstrategy, however, may time shift the above-mentioned rectangular windowto the right until the energy is equally distributed for a causalimpulse response having its maximum at the left side, which insertszeros on the left side of the impulse response. The results may beimproved in practice therefore when the above mentioned first and secondparts of the FIR impulse responses cover the upper and the lower marginof the respective impulse response (e.g., defined by a variable U,whereby 0<U<1), rather than the entire length of the respective impulseresponse1. Sixty percent of the filter coefficients may be considered,for example, when calculating the energy for U=0.6, where the lowerthirty percent form the above-mentioned first part and the upper thirtypercent form the corresponding second part. Thus, in the m^(th)sub-band, the energies E_(mL) and E_(mU) of the first part and thesecond part may be expressed, for example, as follows:

$\begin{matrix}{{{E_{m\; U}\lbrack n\rbrack} = {\sum\limits_{u = 0}^{\lceil{{Km}\frac{U}{2}}\rceil}\;{{{g_{m{({{Km} - u})}}\lbrack n\rbrack} \cdot g_{m{({{Km} - u})}}}{\,^{*}\lbrack n\rbrack}}}},} & (9) \\{{E_{m\; L}\lbrack n\rbrack} = {\sum\limits_{u = {\lfloor{{({1 - \frac{U}{2}})}{Km}}\rfloor}}^{Km}\;{{{g_{m{({{Km} - u})}}\lbrack n\rbrack} \cdot g_{m{({{Km} - u})}}}{{\,^{*}\lbrack n\rbrack}.}}}} & (10)\end{matrix}$Thus, the delay value Δ_(m) is increased when E_(mU)<E_(mL), the delayvalue Δ_(m) is decreased when E_(mU)>E_(mL), and the delay value Δ_(m)is left unchanged when E_(mU)=E_(mL). The delay value Δ_(m) thereforemay be mathematically expressed as follows:

$\begin{matrix}{{\Delta_{m}\left\lbrack {n/V} \right\rbrack} = \left\{ \begin{matrix}{{\Delta_{m}\left\lbrack {{n/V} - 1} \right\rbrack} + P} & {{{if}\mspace{14mu} E_{mU}} < E_{m\; L}} \\{\max\left\{ {{{\Delta_{m}\left\lbrack {{n/V} - 1} \right\rbrack} - P},0} \right\}} & {{{if}\mspace{14mu} E_{mU}} > E_{m\; L}} \\{\Delta_{m}\left\lbrack {{n/V} - 1} \right\rbrack} & {{{if}\mspace{14mu} E_{mU}} = {E_{m\; L}.}}\end{matrix} \right.} & (10)\end{matrix}$Generally, the adaptive delay assignment algorithm may be characterizedas a minimization task, where the respective delay value Δ_(m) is variedin each sub-band until the quality criterion c′_(m)[n/V]=|E_(mU)−E_(mL)|is reduced, for example, to a minimum, and where the index n/V indicatesthat the criterion is evaluated every V^(th) sample time.

The filter impulse response (FIR filter coefficients) may be shifted tothe left when respectively adjusting (e.g., increasing) the delay valueΔ_(m) of a delay line in one sub-band by a number of taps, whichmaintains the total delay (including the delays of delay line and FIRfilter) substantially constant. This avoids the need for a longre-adaptation of the FIR filter coefficients due to the variation of thedelay value Δ_(m). The adaptation period with which the adaptive delayassignment and the adaptive tap assignment is performed, however, shouldbe considerably longer than the adaptation step width of the LMS/NLMSalgorithm. The adaptation of the FIR filter coefficients g_(mk)therefore may be in a steady state when the adaptive tap assignment andadaptive delay assignment are initiated.

Although the adaptive adjustment of filter lengths and the adaptiveadjustment of additional delays in each sub-band may be combined, bothadaptation methods (i.e., the adaptive tap assignment and the adaptivedelay assignment) may be used independently. The number of filtercoefficients, for example, may be pre-defined for each sub-band (e.g.,in accordance with the Bark scale) and the delays Δ_(m) may beadaptively adjusted as explained above. Further the adaptivedetermination of the filter lengths may be performed in accordance withthe adaptive tap assignment method explained above without separatedelay units, or with fixed and predefined delays. This may be especiallyappropriate in cases where the goal target function P(z) is a linearphase or a minimum phase transfer function.

The analysis filter bank and the corresponding synthesis filter banks(see, e.g., the filter banks 22 and 22′ in FIG. 3), as indicated above,divide the real-valued full-band input signal x[n] into a set ofcomplex-valued sub-band signals x_(m)[n] and re-combine thecomplex-valued filtered sub-band signals y_(m)[n] to a real-valuedoutput signal y[n]. Other filter banks may be used, however, that onlyoperate with real-valued sub-band signals. In this case, the sub-bandFIR filters may be implemented more efficiently. The real-valued filterbanks, however, require twice as many MACs (multiply-accumulateoperations) as the corresponding complex-valued filter banks. Thesub-bands may also be under-sampled by a factor M when using complexsub-band signals. The maximum under-sampling factor, in contrast, is M/2when using real-valued filter banks. Finally, the required filterlengths of the sub-band FIR filters are half of the lengths when usingreal-valued sub-band signals. This indicates that the use ofcomplex-valued AFBs and SFBs requires less computational effort thanreal-valued filter banks. Both types of filter banks, however, areapplicable for the use in the present invention.

Evenly stacked or oddly stacked filter banks may be chosen when usingcomplex-valued filter banks. Both types may be efficiently implementedusing a generalized discrete Fourier transform algorithm (GDFTalgorithm). FIGS. 7A and 7B illustrate the sub-bands of an evenlystacked filter bank (FIG. 7A) and an oddly stacked filter bank (FIG.7B). It may be advantageous to use an oddly stacked GDFT filter bankbecause half of the M sub-bands are complex conjugate copies of theother half of the M sub-bands. Merely a number of M/2 complex-valuedsub-band signals therefore are processed. When using an evenly stackedGDFT filter bank the lowest and the highest sub-bands are real-valued,but have half the band widths of the other sub-bands. A number of M/2+1sub-band signals therefore are processed where the signals in the lowestsub-band are real-valued. Thus, the memory requirements areapproximately half and the required MACs are approximately one quarterin the lowest sub-band, as compared to a complex-valued sub-band.Considering that the FIR filter (G₁(z)) of the lowest sub-band has themost filter coefficients g_(1k) (when considering e.g. a frequencyresolution according to Bark or any other psycho-acoustically adaptedfrequency scale), the overall efficiency improves by approximatelytwenty five percent in terms of memory required and by approximatelyfifty percent in terms of MACs required, although the total number ofsub-bands to be processed increases from M/2 to M/2+1.

Although the present invention and its advantages have been described indetail, it should be understood that various changes, substitutions, andalterations may be made herein without departing from the spirit andscope of the invention as defined by the appended claims.

Moreover, the scope of the present application is not intended to belimited to the particular embodiments of the process, machine,manufacture, composition of matter, methods, and steps described in thespecification. As one of ordinary skill in the art will readilyappreciate from the disclosure of the present invention, processes,machines, manufacture, compositions of matter, methods, or steps,presently existing or later to be developed, that perform substantiallythe same function or achieve substantially the same result as thecorresponding embodiments described herein may be utilized according tothe present invention. Accordingly, the appended claims are intended toinclude within their scope such processes, machines, manufacture,compositions of matter, means, methods, or steps.

What is claimed is:
 1. A method for designing a set of sub-band FIRfilters, where each FIR filter has a number of filter coefficients andis connected to an adjustable delay line, the method comprising:dividing an input signal into a number of sub-band signals, where aspectrum of the input signal comprises spectra of the sub-band signals;providing a respective goal sub-band signal for each sub-band dependenton a goal signal; filtering and delaying each sub-band signal using acorresponding FIR filter and delay line to provide filtered signals;providing error signals for each sub-band dependent on the filteredsignals and the corresponding goal signals; adapting the filtercoefficients of each sub-band FIR filter in response to the errorsignals; and changing a respective delay of the delay line for eachsub-band in response to the error signals.
 2. The method of claim 1,where lengths of impulse responses of the sub-band FIR filters differfrom each other in accordance with a psycho-acoustically motivatedfrequency scale.
 3. The method of claim 2, where the psycho-acousticallymotivated frequency scale comprises one of a Bark scale, a Mel scale andan ERB scale.
 4. The method of claim 1, further comprising changing thenumber of filter coefficients of the respective FIR filter for eachsub-band to increase or decrease a second quality criterion.
 5. Themethod of claim 4, where the second quality criterion depends on atleast one of energy of the sub-band error signal, energy of the sub-bandinput signal, and energy of the sub-band FIR filter coefficients.
 6. Themethod of claim 5, where the second quality criterion depends on energyof a subset of consecutive filter coefficients including an end filtercoefficient.
 7. The method of claim 5, where the second qualitycriterion depends on the energy of the sub-band error signal given anumber of consecutive samples of the respective error signal, whichinclude a latest sample of the respective error signal.
 8. The method ofclaim 4, where the second quality criterion is weighted in each sub-bandby a weighting factor that represents a frequency resolution of a humanauditory system.
 9. The method of claim 1, where the first qualitycriterion depends on energy of the filter coefficients of the respectivesub-band FIR filter for each sub-band.
 10. The method of claim 9,further comprising: defining a first sub-set of filter coefficients ofthe respective sub-band FIR filter for each sub-band; defining a secondsub-set of filter coefficients of the respective sub-band FIR filter foreach sub-band; and assuming a minimum for the first quality criterionwhen, in the respective sub-band, the energy of a first sub-set offilter coefficients substantially equals the energy of a second sub-setof filter coefficients.
 11. The method of claim 1, further comprising:calculating a norm of a sum of the error signals of each sub-band; andassuming a minimum for the first quality criterion when the norm becomesminimal.
 12. The method of claim 1, where the dividing of the inputsignal into the sub-band signals comprises filtering the input signalwith an evenly stacked generalized discrete Fourier transform filterbank.
 13. The method of claim 12, where the sub-band input signal andcorresponding FIR filter coefficients are real-valued in lowest andhighest sub-bands and complex-valued in other sub-bands.
 14. A methodfor filtering an input signal with a set of sub-band filters, where eachfilter has a number of filter coefficients and is connected to anadjustable delay line, the method comprising: dividing the input signalinto a number of sub-band signals, where a spectrum of the input signalcomprises spectra of the sub-band signals; providing a respective goalsub-band signal for each sub-band dependent on a goal signal; filteringand delaying each sub-band signal using a corresponding filter and delayline to provide filtered signals; providing error signals for eachsub-band dependent on the filtered signals and the corresponding goalsignals; adapting the filter coefficients of each sub-band filter inresponse to the error signals; and changing a respective delay of thedelay line for each sub-band in response to the error signals.